/*
 * Created by SharpDevelop.
 * User: Dario
 * Date: 15-11-2006
 * Time: 14:34
 * 
 * To change this template use Tools | Options | Coding | Edit Standard Headers.
 */

using System;
using System.Drawing;
using System.Windows.Forms;
using MySql.Data.MySqlClient;

namespace GAH
{
	/// <summary>
	/// Description of ayudaProfes.
	/// </summary>
	public partial class ayudaProfes
	{
		private TextBox pnombre;
		private TextBox pprofesor;
		private TextBox pramo1;
		private TextBox pramo2;
		private TextBox pramo3;
		private TextBox pllave;
		private TextBox Cod1;
		private TextBox Cod2;
		private TextBox Cod3;
		private DataGridView Hor;
		string projectActual;
		int index;
		int Fila;
		int i;
		
		//Varibles de la Griila
		
		private string query;
		private string query2;
		private int Dmax;
		private int Mmax;
		private int varDia;
		
		//private string Contenido;
		private string[] sDia = new string[]{"Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado","Domingo"};
		
		
		public string Nombre{
			set { this.pnombre.Text = value;}
			get { return this.pnombre.Text;}
		}
		public string Profesor{
			set { this.pprofesor.Text = value;}
			get { return this.pprofesor.Text;}
		}
		public string Ramos1{
			set { this.pramo1.Text = value;}
			get { return this.pramo1.Text;}
		}
		public string Ramos2{
			set { this.pramo2.Text = value;}
			get { return this.pramo2.Text;}
		}
		public string Ramos3{
			set { this.pramo3.Text = value;}
			get { return this.pramo3.Text;}
		}
	
		public string Llave{
			set { this.pllave.Text = value;}
			get { return this.pllave.Text;}
		}
					
		public ayudaProfes(ref TextBox Profesor,ref TextBox Nombre,ref TextBox Ramo1, ref TextBox Ramo2, ref TextBox Ramo3,ref TextBox CodRamo1, ref TextBox CodRamo2, ref TextBox CodRamo3, ref DataGridView GridHor, ref TextBox Llave,ref string project)
		{
			this.pprofesor  = 	Profesor;
			this.pnombre  	= 	Nombre;
			this.pramo1 	= 	Ramo1;
			this.pramo2 	= 	Ramo2;
			this.pramo3 	= 	Ramo3;
			this.pllave    	= 	Llave;
			this.Cod1 		=	CodRamo1;
			this.Cod2 		= 	CodRamo2;
			this.Cod3 		= 	CodRamo3;
			this.Hor		=	GridHor;
			projectActual	= project;
			//
			// The InitializeComponent() call is required for Windows Forms designer support.
			//
			InitializeComponent();
			
			//
			// TODO: Add constructor code after the InitializeComponent() call.
			//
			
//			this.Hor.Columns.Add("colModulo"  		, "Modulo");
						
			query = "";
			query += " Select parametros.ModDiar as Modulo, parametros.Semana as Dia From parametros,proyecto where proyecto.Proyecto='"+projectActual+"' and parametros.Proyecto=proyecto.Proyecto ";
			
			negocio Day = new negocio();
			MySqlDataReader ElDia = Day.select(query);
			
		
			
			if(ElDia.Read())
			{
				Dmax = int.Parse(ElDia["Dia"].ToString());
				Mmax = int.Parse(ElDia["Modulo"].ToString());
			}
			
			
			
			do
			{
				if(varDia < Dmax)
				{
//					this.Hor.Columns.Add("col"+Dmax+"",""+sDia[varDia]+"");
					varDia++;
				}
			}
			while(Dmax != varDia);
			
					
			Day.cerrar();
		
		}
		
		void DataGrid1Navigate(object sender, System.Windows.Forms.NavigateEventArgs ne)
		{
			
		}
		
		 
		void ayudaProfesLoad(object sender, System.EventArgs e)
		{
			negocio neg = new negocio();
			
			MySqlDataReader reader = neg.select("SELECT * FROM profesor where Proyecto='"+projectActual+"'");
		   	
	   		Grilla.Columns.Add("colProfe"  		, "Profesor");
	   		Grilla.Columns.Add("colNombre"   	, "Nombre");
	   		Grilla.Columns.Add("colR1"   		, "Ramo(1)");
	   		Grilla.Columns.Add("colR2"   		, "Ramo(2)");
	   		Grilla.Columns.Add("colR3"   		, "Ramo(3)");
	   			   		
	   		Fila = 0;
		   	while (reader.Read())	
		   	{
		   		Grilla.Rows.Add();
		   		// Profesor
		   		Grilla.Rows[Fila].Cells[0].Value = reader["Profesor"].ToString();
		   		// Nombre
		   		Grilla.Rows[Fila].Cells[1].Value = reader["Nombre"].ToString();
		   		// Ramo1
		   		Grilla.Rows[Fila].Cells[2].Value = reader["Ramo1"].ToString();
		   		// Ramo2
		   		Grilla.Rows[Fila].Cells[3].Value = reader["Ramo2"].ToString();
		   		// Ramo3
		   		Grilla.Rows[Fila].Cells[4].Value = reader["Ramo3"].ToString();
		   		Fila++;
		   	}
		   	neg.cerrar();
		}
		
		void GrillaCellContentClick(object sender, System.Windows.Forms.DataGridViewCellEventArgs e)
		{
			negocio neg = new negocio();
			
			Fila    = e.RowIndex;
			index	=Fila;
			//Profesor
			string profe	= Grilla.Rows[Fila].Cells[0].Value.ToString();
			//Nombre
			string nom		= Grilla.Rows[Fila].Cells[1].Value.ToString();
			//Ramo1
			string ramo1	= Grilla.Rows[Fila].Cells[2].Value.ToString();
			//Ramo2
			string ramo2	= Grilla.Rows[Fila].Cells[3].Value.ToString();
			//Ramo3
			string ramo3	= Grilla.Rows[Fila].Cells[4].Value.ToString();
			
			string 	query="";
					query += "select Profesor as C1, Nombre as C2, Ramo1 as C4, Ramo2 as C5, Ramo3 as C6 ";
					query += "from profesor ";
					query += "where ";
					query += "Profesor='"+profe+"' "; 
					query += "and Proyecto='"+projectActual+"'; ";
						
		   			MySqlDataReader reader  = 	neg.select(query);
	      			
	      		
	      	if(reader.Read())
	      	{
			//Profesor
			this.pprofesor.Text	= reader["C1"].ToString();
			//Nombre
			this.pnombre.Text	= reader["C2"].ToString();
		   	}
	      	
			//Ramo1
			this.pramo1.Text	= DescRamo(reader["C4"].ToString());
			this.Cod1.Text  	= reader["C4"].ToString();
			//Ramo2
			this.pramo2.Text	= DescRamo(reader["C5"].ToString());
			this.Cod2.Text  	= reader["C5"].ToString();
			//Ramo3
			this.pramo3.Text	= DescRamo(reader["C6"].ToString());
			this.Cod3.Text  	= reader["C6"].ToString();

			neg.cerrar();
			
			query2 = "select Dia,Modulo from horariosprofesor where Proyecto='"+this.projectActual+"' and profesor='"+this.pprofesor.Text+"' order by Dia,Modulo asc; ";
			
			negocio neg2 = new negocio();
			MySqlDataReader reader2 = neg2.select(query2);
			
			
				
				int D;
				int M;
				
				if (reader2.Read())
				{
					for(int y = 0; y < Mmax; y++)
					{
						this.Hor.Rows.Add();
						this.Hor.Rows[y].Cells[0].Value = "Modulo "+(y+1).ToString();
						for(int x = 0; x < varDia; x++)			
						{
							this.Hor.Rows[y].Cells[x+1].Value="O";
						}
						
					}
					do {
						D = int.Parse(reader2["Dia"].ToString());
						M = int.Parse(reader2["Modulo"].ToString());
						this.Hor.Rows[M].Cells[D].Value = "L";
					} while(reader2.Read());
				}else{
					MessageBox.Show("Error: El profesor no tiene horario asignado");
					i=1;
			
						for(int y=0;y<Mmax;y++)
						{
							this.Hor.Rows.Add();
								for(int x=0;x<=varDia;x++)			
								{
								if(x==0)
								{
									i=1+y;
									this.Hor.Rows[y].Cells[x].Value = "Modulo "+i;
								
								}
								else{
									this.Hor.Rows[y].Cells[x].Value = "O";
								}
							}
						}
				}
				
				neg2.cerrar();
			
			
			
			
			this.Close();
			
			
			
			
			
			
		}
		string DescRamo(string codigo)
		{
		 	string sSalida = "";				
			negocio neg = new negocio();
			string 	query = "select Descripcion from Ramo where Ramo='"+codigo+"' and Proyecto='"+projectActual+"'";
			MySqlDataReader reader = neg.select(query);
			if (reader.Read())
			{
				sSalida = reader["Descripcion"].ToString();
			}
			return(sSalida);
		}
	}
}
